3 class DatabaseOracleTest
extends MediaWikiUnitTestCase
{
6 * @return PHPUnit_Framework_MockObject_MockObject|DatabaseOracle
8 private function getMockDb() {
9 return $this->getMockBuilder( DatabaseOracle
::class )
10 ->disableOriginalConstructor()
15 public function provideBuildSubstring() {
16 yield
[ 'someField', 1, 2, 'SUBSTR(someField,1,2)' ];
17 yield
[ 'someField', 1, null, 'SUBSTR(someField,1)' ];
21 * @covers DatabaseOracle::buildSubstring
22 * @dataProvider provideBuildSubstring
24 public function testBuildSubstring( $input, $start, $length, $expected ) {
25 $mockDb = $this->getMockDb();
26 $output = $mockDb->buildSubstring( $input, $start, $length );
27 $this->assertSame( $expected, $output );
30 public function provideBuildSubstring_invalidParams() {
40 * @covers DatabaseOracle::buildSubstring
41 * @dataProvider provideBuildSubstring_invalidParams
43 public function testBuildSubstring_invalidParams( $start, $length ) {
44 $mockDb = $this->getMockDb();
45 $this->setExpectedException( InvalidArgumentException
::class );
46 $mockDb->buildSubstring( 'foo', $start, $length );